package com.hgl.bi.web.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hgl.bi.common.model.dto.PageDTO;
import com.hgl.bi.web.entity.SetEntity;
import com.hgl.bi.web.model.dto.SharedSetDto;
import com.hgl.bi.web.model.vo.FileVo;

import java.util.List;

/**
 * @program: BI
 * @description: 数据集管理服务
 * @author: hgl
 * @create: 2025-02-16 21:33
 */
public interface SetService extends IService<SetEntity> {

    List<FileVo> getAssociatedFiles(Long id);

    void sharedSet(long userId, SharedSetDto sharedSetDto);

    void removeSharedSet(long userId, SharedSetDto sharedSetDto);

    Page<SetEntity> sharedPage(long userId, PageDTO pageDto);

    long countSharedSets(long userId);

    List<Long> getSharedUsers(long userId, Long id);
}
